package com.ym.medical.domain.entity;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.ym.common.constant.BaseEntity;
import com.ym.base.enums.FlagEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Table;
import java.util.Date;

/**
 * 支付异常记录对象 pay_exception_record
 *
 * @author ym
 * @date 2020-08-24
 */
@ApiModel("支付异常记录-实体")
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Table(name = "pay_exception_record")
public class PayExceptionRecordEntity extends BaseEntity {

	private static final long serialVersionUID = 1L;

	/**
	 * 订单号
	 */
	@ApiModelProperty("订单号")
	private String ioNum;

	/**
	 * 交易类型 (图文咨询,电话咨询,视频咨询,送心意,充值,提现)
	 */
	@ApiModelProperty("交易类型 (图文咨询,电话咨询,视频咨询,送心意,充值,提现)")
	private String tdType;

	/**
	 * 支付状态(待支付,已支付,退费申请中.已退费,支付异常)
	 */
	@ApiModelProperty("支付状态(待支付,已支付,退费申请中.已退费,支付异常)")
	private String payState;

	/**
	 * 异常信息
	 */
	@ApiModelProperty("异常信息")
	private String msg;

	/**
	 * 支付方式 (微信,支付宝,其他,银行卡,余额)
	 */
	@ApiModelProperty("支付方式 (微信,支付宝,其他,银行卡,余额)")
	private String payType;

	/**
	 * 删除标志 (支付状态为已成功或已退费时执行逻辑删除)
	 */
	@ApiModelProperty("删除标志 (支付状态为已成功或已退费时执行逻辑删除)")
	@JsonSerialize(converter = FlagEnum.Covert.class)
	private String deleted;

	/**
	 * 操作人
	 */
	@ApiModelProperty("操作人")
	private Long creator;

	/**
	 * 创建时间
	 */
	@ApiModelProperty("创建时间")
	private Date createTime;

}
